<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <body></body>
  <script>
    // 1.编写函数map(arr) 把数组中的每一位数字都增加30%
    function Map(arr) {
      let res = [];
      arr.map(function (item) {
        res.push((item * 13) / 10); //使用升降幂确保不会精度损失
      });
      return res;
    }
    let arr1 = [1, 2, 3, 4, 5];
    console.log(Map(arr1));
    // 2.编写函数has(arr , 60) 判断数组中是否存在60这个元素，返回布尔类型
    function Has(arr1, num) {
      return (
        arr1.filter(function (item) {
          return item === num;
        }) == num
      );
    }
    let num = 60;
    let arr2 = [1, 3, "60", 60];
    console.log(Has(arr2, num));
    // 3.编写函数norepeat(arr) 将数组的重复元素去掉，并返回新的数组
    function noRepeat(arr) {
      arr.sort();
      for (let i = 0; i < arr.length - 1; i++) {
        if (arr[i] === arr[i + 1]) {
          arr.splice(i, 1);
          i--;
        }
      }
      return arr;
    }
    let arr3 = [1, 1, 2, 1, 3, 2, "1", "2", "1", "2"];
    console.log(noRepeat(arr3));
    // 4.有一个从小到大排好序的数组。现输入一个数，要求按原来的规律将它插入数组中。
    function insert(arr, num) {
      let res = arr.findIndex(function (item, index) {
        return item > num;
      });
      arr.splice(res, 0, num);
      return arr;
      //   let end = arr.splice(res),
      //     star = arr.splice(0, res + 1);
      //   star.push(num);
      //   return star.concat(end);
    }
    let arr4 = [1, 2, 3, 4, 5, 6],
      n = 7;
    console.log(insert(arr4, n));
    // 5.使用JSON形式创建一个对象，该对象存储一个学生的信息
    // 该对象包含学号、身份证、年龄、性别、所学专业等属性信息
    // 同时该对象包含一个自我介绍的方法，用来输出该对象的所有信息
    let JSON = [
      {
        id: "1000phone",
        name: "高哥",
        body_id: 1110,
        age: 18,
        sex: "man",
        major: "千峰高哥",
        self_introduction: function () {
          return `大家好！我是${this.name}，我是一个${this.age}的${this.sex}，我的专业是：${this.major}，我的学号是：${this.id}，我的身份证号是：${this.body_id}。`;
        },
      },
    ];
    document.write(JSON[0].self_introduction());
  </script>
</html>
